package com.kingdee.eas.basedata.master.cssp.app;

import com.kingdee.bos.BOSException;
//import com.kingdee.bos.metadata.*;
import com.kingdee.bos.framework.*;
import com.kingdee.bos.util.*;
import com.kingdee.bos.Context;

import java.lang.String;
import com.kingdee.bos.metadata.entity.EntityViewInfo;
import com.kingdee.eas.common.EASBizException;
import com.kingdee.bos.dao.IObjectPK;
import java.util.Map;
import com.kingdee.eas.basedata.master.cssp.CustomerSaleInfoInfo;
import com.kingdee.bos.metadata.entity.SelectorItemCollection;
import com.kingdee.eas.framework.CoreBaseCollection;
import java.util.Set;
import java.util.HashSet;
import com.kingdee.bos.util.*;
import com.kingdee.eas.basedata.master.cssp.CustomerCompanyInfoInfo;
import com.kingdee.eas.basedata.framework.app.DataBaseDController;
import com.kingdee.bos.dao.IObjectValue;
import com.kingdee.bos.BOSException;
import com.kingdee.bos.Context;
import com.kingdee.eas.framework.CoreBaseInfo;
import com.kingdee.bos.framework.*;
import com.kingdee.eas.basedata.master.cssp.CustomerCollection;
import com.kingdee.bos.util.BOSUuid;
import com.kingdee.eas.basedata.org.CtrlUnitInfo;
import java.util.List;
import com.kingdee.eas.basedata.master.cssp.CustomerInfo;

import java.rmi.RemoteException;
import com.kingdee.bos.framework.ejb.BizController;

public interface CustomerController extends DataBaseDController
{
    public CustomerInfo getCustomerInfo(Context ctx, IObjectPK pk) throws BOSException, EASBizException, RemoteException;
    public CustomerInfo getCustomerInfo(Context ctx, IObjectPK pk, SelectorItemCollection selector) throws BOSException, EASBizException, RemoteException;
    public CustomerCollection getCustomerCollection(Context ctx, EntityViewInfo view) throws BOSException, RemoteException;
    public CustomerCollection getCustomerCollection(Context ctx, String oql) throws BOSException, RemoteException;
    public CustomerCollection getCustomerCollection(Context ctx) throws BOSException, RemoteException;
    public CustomerInfo getCustomerInfo(Context ctx, String oql) throws BOSException, EASBizException, RemoteException;
    public CustomerCompanyInfoInfo getCustomerCompanyInfo(Context ctx, IObjectPK customerPK, IObjectPK companyInfoPK) throws BOSException, EASBizException, RemoteException;
    public CustomerCompanyInfoInfo getCustomerCompanyInfo(Context ctx, IObjectPK pk) throws BOSException, EASBizException, RemoteException;
    public CustomerCompanyInfoInfo getCustomerCompanyInfo(Context ctx, IObjectPK pk, SelectorItemCollection selecterItem) throws BOSException, EASBizException, RemoteException;
    public CustomerCompanyInfoInfo getCustomerCompanyInfo(Context ctx, IObjectPK customerPK, IObjectPK companyPK, SelectorItemCollection selecter) throws BOSException, EASBizException, RemoteException;
    public CustomerCompanyInfoInfo getCustomerCompanyInfo(Context ctx, String custoemrNumber, String companyOrgNumber) throws BOSException, EASBizException, RemoteException;
    public CustomerSaleInfoInfo getCustomerSaleInfo(Context ctx, IObjectPK pk) throws BOSException, EASBizException, RemoteException;
    public CustomerSaleInfoInfo getCustomerSaleInfo(Context ctx, IObjectPK pk, SelectorItemCollection selector) throws BOSException, EASBizException, RemoteException;
    public CustomerSaleInfoInfo getCustomerSaleInfo(Context ctx, IObjectPK customerPK, IObjectPK saleInfo) throws BOSException, EASBizException, RemoteException;
    public CustomerSaleInfoInfo getCustomerSaleInfo(Context ctx, IObjectPK customerPK, IObjectPK salePK, SelectorItemCollection selector) throws BOSException, EASBizException, RemoteException;
    public CustomerSaleInfoInfo getCustomerSaleInfo(Context ctx, String customerNum, String saleNum) throws BOSException, EASBizException, RemoteException;
    public void approve(Context ctx, IObjectPK customerPK) throws BOSException, EASBizException, RemoteException;
    public Map approve(Context ctx, IObjectPK[] pks) throws BOSException, EASBizException, RemoteException;
    public void unApprove(Context ctx, IObjectPK customerPK, boolean isUnApprove) throws BOSException, EASBizException, RemoteException;
    public Map unApprove(Context ctx, IObjectPK[] customerPks) throws BOSException, EASBizException, RemoteException;
    public boolean isExistOtherInfo(Context ctx, IObjectPK customerPK) throws BOSException, EASBizException, RemoteException;
    public void freezed(Context ctx, IObjectPK customerPK, boolean isForceFreezed) throws BOSException, EASBizException, RemoteException;
    public void unFreezed(Context ctx, IObjectPK customerPK, boolean isForceUnFreezed) throws BOSException, EASBizException, RemoteException;
    public void updateCheck(Context ctx, IObjectPK pk, IObjectValue value) throws BOSException, EASBizException, RemoteException;
    public boolean isExistCustomerByInter(Context ctx, String orgId) throws BOSException, EASBizException, RemoteException;
    public CustomerCollection getCustomerCollectionByInter(Context ctx, String orgId) throws BOSException, EASBizException, RemoteException;
    public boolean isHasDeal(Context ctx, IObjectPK pk) throws BOSException, EASBizException, RemoteException;
    public boolean isExistCustomerByInter(Context ctx, String interOrgId, String comOrgId) throws BOSException, EASBizException, RemoteException;
    public CustomerCollection getCustomerCollectionByInter(Context ctx, String interOrgId, String comOrgId) throws BOSException, EASBizException, RemoteException;
    public CustomerCollection getCustomerCollectionByComOrg(Context ctx, String comOrgID) throws BOSException, EASBizException, RemoteException;
    public String checkInternalCompanyExist(Context ctx, BOSUuid id) throws BOSException, EASBizException, RemoteException;
    public List isExistCustomerByInter(Context ctx, List ids) throws BOSException, EASBizException, RemoteException;
    public boolean isExistInterCustomer(Context ctx, Map param) throws BOSException, EASBizException, RemoteException;
    public void createCustomerByTransfer(Context ctx, Map param) throws BOSException, EASBizException, RemoteException;
    public CustomerCollection getInterCustomerCollection(Context ctx, String orgid, String cuid) throws BOSException, EASBizException, RemoteException;
    public void batchAssign2(Context ctx, String cuid, String[] diddata, String[] cuiddata, HashSet assistData) throws BOSException, EASBizException, RemoteException;
    public void batchAssign2(Context ctx, String cuid, String sql, HashSet basedata, HashSet cuData, HashSet assistData) throws BOSException, EASBizException, RemoteException;
    public void batchAssignAssist(Context ctx, String cuid, String[] diddata, String[] cuiddata, HashSet assistData) throws BOSException, EASBizException, RemoteException;
    public void batchAssignAssist(Context ctx, String cuid, String sql, HashSet basedata, HashSet cuData, HashSet assistData) throws BOSException, EASBizException, RemoteException;
    public Map getEditUIInitData(Context ctx, String customerId, CtrlUnitInfo curCtrlUnitInfo) throws BOSException, EASBizException, RemoteException;
    public void batchDelete(Context ctx, Set ids) throws BOSException, EASBizException, RemoteException;
    public void batchUnAssignAssist(Context ctx, String cuId, String[] orgIds, String[] dataIds, HashSet assistDataSet) throws BOSException, EASBizException, RemoteException;
    public void batchUnAssignAssist(Context ctx, String cuId, String[] orgIds, String dataSql, String[] notInDataIds, HashSet assistDataSet) throws BOSException, EASBizException, RemoteException;
    public String readNewNumber(Context ctx, String cuId, CustomerInfo customerInfo) throws BOSException, EASBizException, RemoteException;
}